const ejs = require('ejs')
const express = require('express')
const cookieParser = require('cookie-parser')
// var bodyParser = require('body-parser')
const app = express()

// body-parser 插件
app.engine('html', ejs.__express)
// 配置模板引擎
app.set("view engine", "html")



// 内置中间件
// 利用 express.static 托管静态文件,即浏览器可以直接访问到,可以配置静态web目录
app.use(express.static('public'))

// 配置 cookieParser 中间件
app.use(cookieParser('itying'))

app.get('/', (req, res) => {
  // 多个域名共享 cookie aaa.itying.com bbb.itying.com      可以配置 domain: ".itying.com"
  // 设置 cookie  如果 cookie 没有过期的话，关闭浏览器后重新打开，cookie 不会销毁
  // res.cookie("_id", "110", { maxAge: 1000 * 60 * 60 })

  // cookie 加密
  /**    
   * 配置中间件的时候，需要传入加密字符串
          1、app.use(cookieParser('itying'))
          2、res.cookie("_id", "110", { maxAge: 1000 * 60 * 60, signed: true })
          3、req.signedCookies
   * 
   */
  res.cookie("_id", "110", { maxAge: 1000 * 60 * 60, signed: true })

  res.send('首页')
})

app.get('/login', (req, res) => {
  // 获取 cookie
  // let { _id } = req.cookies
  // 获取加密 cookie
  let { _id } = req.signedCookies
  // req.query 获取 get 传值
  // res.render('login', {})
  res.send('cookie' + _id)
})

app.post('/doLogin', (req, res) => {
  const body = req.body
  console.log(body)
  res.send("执行提交")
})

// 监听端口  端口号建议写成 3000 以上
app.listen(3000)
